Method of providing customized hospitality media functions at a plurality of set-top boxes being connected to an RF coax network, and hospitality media system thereof

ABSTRACT

A hospitality media system includes a plurality of set-top boxes (STBs) coupled to a radio frequency (RF) coax network. Each STB has an identifier for identifying the STB. A content source broadcasts media content to the STBs utilizing the RF coax network and an update server distributes software data to the STBs. The software data causes a particular STB to perform a media function customized for the particular STB according to the identifier of the particular STB.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of Canadian Patent Application No.2,706,103 filed Jun. 18, 2010 which is incorporated herein by reference.

BACKGROUND OF THE INVENTION

The invention pertains generally to hospitality media and entertainmentsystems. More specifically, the invention relates to providingcustomized media functions at a plurality of set-top boxes beingconnected to a radio frequency coax network in a hospitality mediasystem.

Older hotels that were not originally equipped with high-speed computernetworks are under increased pressure to install such networks in orderto meet guest expectations by providing an advanced digital mediaexperience in the individual rooms. For example, customizableuser-interfaces (UIs), pay-per-view content, video-on-demand (VOD)content, and interactive program guides (IPGs) are some examples ofadvanced features that are expected by guests. However, for hotels thatwere not originally designed to accommodate a high-speed internetprotocol (IP) network, the costs of installing a complete wired IPsolution are often prohibitive. Additionally, it may not be possible, ormay not be desirable to install a complete wired IP solution due tohistorical or architectural reasons.

Installing a wireless network with speeds and bandwidth sufficient fortransferring large files to multiple users may be an available solutionin the future; however, current wireless technology is unable toreliably handle the huge bandwidth requirements of high definitionmultimedia content desired by guests without using large numbers ofaccess points distributed throughout the hotel property. These accesspoints themselves require wired connections to a content server and mustbe physically installed in multiple locations to provide strong signalstrengths in all guest rooms and other locations where high speed mediaaccess is required. Because each guest may utilize the full capacity ofa single access point, it may be that each and every room requires itsown access point. Additionally, frequency allocation will need to beconsidered to avoid interference between access points. Therefore, theoriginal problem of substantial installation and equipment costs isagain encountered.

BRIEF SUMMARY OF THE INVENTION

According to an exemplary configuration of the invention there isprovided a method of providing customized media functions in ahospitality media system. A plurality of set-top boxes (STBs) arecoupled to a radio frequency (RF) coax network, each STB having anidentifier for identifying the STB. Media content is broadcast from acontent source to the STBs utilizing the RF coax network, and softwaredata is distributed from an update server to the STBs. The software datais utilized at a particular STB to perform a media function customizedfor the particular STB according to the identifier of the particularSTB.

According to another exemplary configuration of the invention there isprovided a hospitality media system. Included is a plurality of set-topboxes (STBs) for coupling to a radio frequency (RF) coax network, eachSTB having an identifier for identifying the STB. A content sourcebroadcasts media content to the STBs utilizing the RF coax network, andan update server distributes software data to the STBs. The softwaredata causes a particular STB to perform a media function customized forthe particular STB according to the identifier of the particular STB.

According to yet another exemplary configuration of the invention thereis provided a hospitality media system including a plurality of set-topboxes (STBs) for coupling to a radio frequency (RF) coax network, eachSTB being pre-programmed with an identifier. Included is means forbroadcasting media content to the STBs utilizing the RF coax network,and means for broadcasting software data to the STBs utilizing the REcoax network. The software data includes a module associated with atarget identifier, and the module is only activated by one or moretarget STBs being pre-programmed with the target identifier.

These and other embodiments and advantages of the invention will becomeapparent from the following detailed description, taken in conjunctionwith the accompanying drawings, illustrating by way of example theprinciples of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be described in greater detail with reference to theaccompanying drawings which represent preferred embodiments thereof,wherein:

FIG. 1 illustrates a hotel media system for providing customized mediafunctions at a plurality of set-top boxes installed in hotel guest roomsaccording to one configuration of the invention.

FIG. 2 illustrates one configuration of an application program havingmodules each being associated with one or more target identifier(s) forperforming media functions at a set-top box having a matching identifieraccording to one configuration of the invention.

FIG. 3 illustrates first interactive program guide metadata of aprevious time period being updated to second interactive program guidemetadata for a next time period according to one configuration of theinvention.

FIG. 4 illustrates dynamically updating in-real time the interactiveprogram guide and playable channel lists specified in modules of FIG. 2when a guest orders content-on-demand according to one configuration.

FIG. 5 illustrates a user interface on a particular set-top box foractivating playback of content-on-demand using a passkey obtained fromthe web server of FIG. 1 according to another configuration.

FIG. 6 illustrates an exemplary operational flowchart of operationsperformed by the hotel media system of FIG. 1.

DETAILED DESCRIPTION

FIG. 1 illustrates a hotel media system 100 for providing customizedmedia functions at a plurality of set-top boxes (STBs) 106, 120according to an exemplary configuration of the invention. As shown, thehotel media system 100 includes a radio frequency (RF) coax network 130.RF coax networks 130 are typically available in older hotels that arenot equipped with high-speed computer networks and are normally utilizedto provide a one-way RF signal for broadcasting analog cable televisionchannels to hotel rooms. One aspect of this configuration of theinvention is to use the existing RF coax cable network 130 to broadcastto the STBs 106, 120 both media content and an application program 160to thereby create a customized guest experience at each STB 106, 120. Inone configuration, each STB 106, 120 has a unique identifier 114, 128such as a room identifier being pre-programmed in a non-volatile memory110, 124 during an installation process. In other configurations theidentifiers 114, 128 may be the same in groups of STBs and/or may bedynamically programmed during media system 100 operation rather thanpre-programmed at installation. Also, more than one identifier 114, 128may be included in each STB 106, 120 such as including both a roomnumber identifier and a service level identifier.

When at least one STB 106, 120 needs to be updated (for reasons thatwill be explained below), an updated application program 133 isbroadcast by an update server 132 to all the STBs 106, 120 using the RFcoax network 130. When detecting an updated application program 133broadcast by the update server 132, each STB 106, 120 replaces theapplication program 160 in the non-volatile memory 110, 124 with theupdated application program 133 received from the update server 132.Although all STBs 106, 120 may install and execute the same applicationprogram 160, the application program 160 behaves differently on STBs106, 120 having different identifiers 114, 128. For example, as shown inFIG. 1, television 104 displays a video function being customizedaccording the first identifier 114, and television 118 displays a videofunction being customized according the second identifier 128. This isalso beneficial because the equipment types utilized in the rooms 102,116 need not be the same. For example, as shown in FIG. 1, STB 106includes a universal serial bus (USB) 108 while STB 120 includes Wi-Fi122. As will be further explained in the following sections, theapplication program 160 correctly controls the USB 108 and the Wi-Fi 122according to the identifiers 114, 128.

To briefly describe other features illustrated in FIG. 1, a contentsource 134 includes content providing systems such satellite receivers136, a local media content server 140, and/or a cable television box138. Other forms of content providing systems could also be includedsuch as internet service provider (ISP) connections, radio receivers,video cassette systems, compact disc (CD) players, digital versatiledisc (DVD) players, etc. Installation of the content source 134 is notcost intensive and can usually be located out of sight in a closet or abasement location of the hotel. Additionally, a controller 144 having aweb server 146 and a passkeys module 148 may also be installed in thehotel or could be installed at a remote location accessible through anetwork such as the Internet.

The controller 144 is coupled to each of the content providing systems136, 138, 140 in the content source 134 and to an RF multiplexer 142 tothereby allow the controller 144 to dynamically select and control mediacontent to be broadcast to the STBs 106, 120 via the RF coax network130. The controller 144 also generates the updated application program133 according to configuration information that is stored in a database150 and possibly according to selections made on the web server 146 byguests or hotel staff. The guests and hotel staff may access the webserver 146 using a hotel or external network 152 having a wirelessaccess point 154. Because the bandwidth intensive media content isbroadcast to the STBs 106, 120 using the RF coax network 130, thewireless access point 154 only needs to provide low-speed, low-bandwidthconnectivity for accessing the web server 146. Therefore, no significantinstallation costs are encountered from installing the wireless accesspoint 154. Other methods of accessing the controller 144 such as wiredand wireless connections or other types of networks are also possible inother configurations.

As shown in FIG. 1, the update server 132 is coupled to the RF coaxnetwork 130 and the controller 144 for broadcasting the updatedapplication program 133 to the STBs 106, 120 throughout the hotel usingthe RF coax network 130. As will be explained, in other configurations,the update server 132 may also distribute the updated applicationprogram 133 to the STBs 106, 120 using either broadcasting or othermethods.

FIG. 2 illustrates an exemplary configuration of software data such asan application program 200 having modules 202, 204, 206, 208, 210, 212,214, 216, 218, 220, 222 each being associated with one or more targetidentifier(s) for performing media functions at a STB having a matchingidentifier according to one configuration of the invention. In oneconfiguration, each module corresponds to a different media function. Asshown in FIG. 2, the application program 200 may perform any number ofmedia functions, each being targeted at and customized for anyparticular STB identifier(s). For example, a first television controllermodule 202 may be included to allow STBs having target identifiers ID_1,ID_2, ID_3, for example, to control an attached television of a firsttype. A second television controller module 204 may be included to allowSTBs having target identifiers ID_4, ID_5, ID_6, for example, to controlan attached television of a second type. Having different televisiontype modules 202, 204 is useful because each television manufacture andtelevision model may require a specific set of control commands or aspecific control protocol be followed by a controlling STB 106, 120.Therefore, the television controlling modules 202, 204 being targeted tothe specific identifiers of corresponding STBs 106, 120 allows differenttelevision types to be utilized with the hotel media system 100.

Other equipment type modules could also be included in the applicationprogram 200 and targeted toward any types of equipment, such asdifferent types of STBs 106, 120, personal video recorders, projectors,audio systems, etc. In these configurations, the identifier 114, 128stored in each STB 106, 120 may correspond to a type of equipment usedin conjunction with the STB 106, 120. The database 150 shown in FIG. 1may include this information to allow the media system 100 to keep trackof which STB identifiers 114, 128 correspond to which television controlmodules 202, 204. For example, if a new television 104, 118 is installedin a particular room 102, 116, the database 150 may be correspondinglyupdated and the controller 144 may automatically generate an updatedapplication program 133 to be distributed to the STBs 106, 120 by theupdate server 132. In this way, software data (e.g., the updatedapplication program 133) is broadcast by the update server 132 to theSTBs 106, 120 utilizing the RF coax network 130, and the software dataincludes a module associated with a target identifier that matches theidentifier of the STB in the room with the new television. As thismodule is only activated by the one or more target STBs beingpre-programmed with the target identifier, only the functionality of theSTB in the room with the new television is affected even though all STBs106, 120 may receive and install the updated application program 133.

In another example, the application program 200 includes room controlmodule 206 being targeted at STBs having the exemplary identifiers ID_3and ID_6. Room control may involve controlling aspects of the hotel room102, 116 such as the windows, blinds, air conditioner, heater, lights,fans, door locks, etc. As only some rooms may be equipped with roomcontrol functions, in this example, room control module 206 is activatedonly on STBs having target identifiers ID_3 and ID_6 by comparing thetarget identifiers ID_3 and ID_6 with the identifier on each STB 106,120. Therefore, the identifiers 114, 128 may again correspond to anequipment type (i.e., type of room control) and identify each STB 106,120 in terms of which type of equipment is connected to each STB 106,120.

Alternatively, only some rooms 102, 116 may be entitled to utilize roomcontrol functions and therefore module 206 will only be activated inthese rooms. In this configuration, the identifier 114, 128 maycorrespond to a level of service indicating which STBs 106, 120 mayutilize the room control module 206. As room control authorizations arechanged in the database 150, the controller 144 may generate an updatedapplication program 133 having updated target IDs for the room controlmodule 206. The update server 132 then broadcasts the updatedapplication program 133 to the STBs 106, 120 using the RF coax network130. Changes in the room control authorizations may be madeautomatically according to reservations or a hotel property managementsystem (PMS), for example, or be made manually by hotel staff utilizingthe web server 146.

Interactive program guide (IPG) modules 210, 212 include metadatautilized to generate an IPG on the STBs 106, 120 according to theparticular set of channels that are available at each STB 106, 120. Inthis example, there are two channel sets available: a basic channelpackage having the channels described in IPG module 210, and an enhancedchannel package having the channels described in IPG module 212.According to the continuously changing channel content, the controller144 may periodically generate an updated application program 133 havingcurrent metadata for generating the IPG for each set of the mediacontent customized on each STB 106, 120 by the identifier 114, 128 ofeach STB 106, 120. The update server 132 then broadcasts the updatedapplication program 133 to each STB 106, 120 utilizing the RF coaxnetwork 130.

FIG. 3 illustrates first IPG metadata 300 of a previous time periodbeing updated to second IPG metadata 302 for a next time periodaccording to an exemplary configuration of the invention. In differentconfigurations, the updated IPG metadata 302 may be periodicallybroadcast to all STBs 106, 120 every few hours, once per day, ordynamically when a change in channel scheduling or availability occurs.

The application program 200 in FIG. 2 also includes exemplary playablechannel list modules 214, 216 to specify which channels of the mediacontent sent on the RF coax network 1.30 are authorized to be played byeach STB 106, 120. In this example, there are two channel setsavailable: a first channel package having the playable channelsdescribed in module 214, and a second channel package having theplayable channels described in module 216. Additional channel listmodules may also be included as required. For example, if a particularSTB is now authorized to view an additional channel, an additionalchannel list module targeted at the identifier of the particular STB maybe included. This change in authorized channels could occur when a guestassociated with the particular STB orders content-on-demand such aspay-per-view or video-on-demand (VOD). When the change in authorizedchannels occurs, the controller 144 may dynamically generate an updatedapplication program 133 in real-time, the updated application program133 having new playable channel lists for each STB 106, 120 according tothe identifier of each STB 106, 120. The update server 132 may thenbroadcast the updated application program 133 to each STB 106, 120.Alternatively, in another configuration, passkeys may be utilized toavoid the need to send out an immediately updated application program133.

FIG. 4 illustrates dynamically updating in-real time the IPG andplayable channel lists specified in modules 210, 212, 214, 216 of FIG. 2when a guest orders content-on-demand. A guest may place an order forcontent-on-demand by accessing the web server 146 through the wirelessaccess point 154. Alternatively, a hotel staff member may place theorder for the guest. If billing for the content-on-demand order isrequired, the web server 146 may additionally bill the guest by adding acharge to the guest's room 102, 116 in the hotel PMS (possibly alsointegrated with database 150) or by directly charging the guest's creditcard.

As shown in FIG. 4, in this example, the STB identifiers 114, 128 areroom identifiers that identify each STB 106, 120 by indicating the room102, 116 in which each STB 106, 120 is located. According to the levelof service for which each room is entitled, the channels of IPG modules210, 212 are broken into two sets: the basic channels 1-30, and theenhanced channels 1-60. For example, the IPG available in “room 301”will only include the set of channels 1-30, while the IPG in “room 302”will include the set of channels 1-60. It should also be noted that thechannels may be available from any combination of the content systems136, 138, 140 available in the content source 134. Additionally, bydefault, not all channels listed on the IPG may be authorized to beplayed at each STB 106, 120. Instead, each room has a customized list ofplayable channels (labeled “Playable Channels” in FIG. 4). For example,some rooms 102, 116 may be able to play more channels than other rooms102, 116 due to being entitled to a higher service level or due tohaving purchased content-on-demand.

In this example, a first set of metadata 400 is replaced with an updatedset of metadata 402 after “room 301” orders channel 21. The updateserver 132 then broadcasts the updated set of metadata 402 to all STBs106, 120 utilizing the RF coax network 130. Each STB 106, 120 thereafterutilizes the updated set of metadata 402 to generate the IPG and todetermine which channels are authorized for playback. For example, thecontroller 144 may generate an updated application program 133 includingthe updated set of metadata 402 upon confirming the order from “room301”. The update server 132 then broadcasts the updated applicationprogram to all STBs 106, 120. The STB having the “room 301” identifieris thereby authorized to view channel 21. In another configuration, onlythe updated set of metadata 402 may be broadcast without broadcastingthe full application program 200.

The application program 200 in FIG. 2 also includes an exemplarycontent-on-demand module 208 being targeted at STBs having theidentifiers ID_1 and ID_4. The content-on-demand module 208 may includemetadata such as advertisement text, graphics, video clips, and menus topromote pay-per-view, video-on-demand (VOD), and pay-use contentavailable on the hotel media system 100. Because not all rooms may beallowed to utilize content-on-demand, in this example, the module 208 istargeted only at authorized target identifiers ID_1 and ID_4.Additionally, as the content-on-demand authorized to be played in eachroom 102, 116 may not necessarily be the same, a plurality of differentcontent-on-demand modules 208 may be included in the application program200, each targeting different STBs 106, 120 with the appropriatecontent.

Upon changes in the available content-on-demand or changes inauthorization for which STBs may utilize content-on-demand in thedatabase 150, the controller 144 may generate an updated applicationprogram 133 having updated content-on-demand metadata and targetidentifiers for the content-on-demand module 208. The update server 132then broadcasts this software data to each STB 106, 120 using the RFcoax network 130. Additionally, if a particular STB 106, 120 isauthorized to play a particular pay-per-view channel or VOD movie, thecontent-on-demand module 208 may automatically cause the particular STBto change to the appropriate RF media channel and play the pay-per-viewchannel or VOD movie.

FIG. 5 illustrates a UI 500 on a particular STB 106, 120 allowing a userto activate playback of content-on-demand using a passkey obtained fromthe web server 146 according to another configuration of the invention.Using passkeys may be beneficial for some media systems 100. One reasonis to avoid the need to send out in real-time an updated applicationprogram 133 each time content-on-demand is order by a guest. In somesituations, it may not be possible to perform real-time updating of theapplication program 160 in each STB 106, 120 due to hardware limitationsof the STB 106, 120 or other reasons. For example, in order to avoiddisrupting guests, the STBs 106, 120 may be limited to only install theupdated application program 133 received from the update server 132 whenthe STB 106, 120 is powered off or in a standby mode. Therefore, inthese situations, updates may typically only be installed at night orwhen the STB 106, 120 is otherwise not in use by a guest.

To allow customized and dynamic content-on-demand media functions withSTBs 106, 120 so constrained, in one configuration, when a guestattempts to activate content-on-demand such as a starting a pay-per-viewsubscription to a certain channel or activating a video-on-demand on aparticular STB 106, 120, a passkey module 222 of the application program200 may be utilized to query the guest for a first passkey (query 502 inFIG. 5). Instructions 504 may describe various options for how the guestmay obtain the passkey. The passkey module 222 then compares the firstpasskey entered at query 502 with a second passkey being specified bythe passkey module 222 according to the identifier 114, 128 of theparticular STB 106, 120. Assuming the password entered at query 502matches a password specified by the passkey module 222, the guest isdeemed to be authorized to watch the corresponding video-on-demandchannel utilizing the particular STB 106, 120. The particular STB 106,120 may then automatically switch to the correct channels in order toplay the movie. If the first passkey entered at query 502 does not matcha password specified by the passkey module 222, the particular STB 106,120 may issue a helpful error message to the user.

In one configuration, the passkey module 222 may include a plurality ofsecond passkeys 148 as pre-generated by the controller 148 and includedin the updated application program 133, which is installed as theapplication program 160 in each STB 106, 120. Each of the passkeys 148may be for a different media function and be associated with a targetSTB identifier 114, 128. For example, different passkeys for each STBmay be associated with playing predetermined channels for predeterminedtime durations, or to switch to predetermined service levels, etc.

In another configuration, the passkey module 222 includes an algorithmthat specifies the second passkey by causing the second passkey to begenerated by the particular STB 106, 120. In order to prevent guests indifferent rooms from being able to use the same passkeys and to avoid aguest in a same room reusing a same passkey multiple times, thealgorithm in the passkey module 222 may generate the passkeys for eachmedia function according to the identifier of the particular STB and thecurrent time. The current time may be kept substantially the samethroughout the media system 100, for example by the update server 132broadcasting the time to the STBs 106, 120 utilizing the RF coaxnetwork, and may include any resolution of the current time includingyear, month, day, hour, minute, etc. The controller 144 may utilize thesame algorithm as the passkey module 222 to generate the passkeys 148,as required. Passkeys may be valid for a window of time such as 10minutes and then new ones would be generated by the algorithm.

By using an algorithm to generate the passkeys 148, 222 according to STBidentifiers 114, 128 and a current time, continuously changing passkeysare automatically utilized by the media system 100 without requiring afrequently updated application program 133 to be distributed to the STBs106, 120. An additional benefit of broadcasting the time to the STBs106, 120 utilizing the RF coax network is that time sensitiveinformation such as a list of television programs currently availableand displayed to the user as an IPG will be correct without requiringhotel technicians to manually set and maintain the time on each STB 106,120. In this way, the time on all STBs 106, 120 in all rooms of thehotel will be automatically set to the correct time when the internalclock of a STB 106, 120 drifts, after seasonal time changes, and/or whena faulty STB is replaced, for example. This reduces administrationcosts, especially in a hotel having hundreds of guest rooms that aretypically occupied by guests and therefore inconvenient for techniciansto enter.

After the guest (or staff member) orders content-on-demand utilizing theweb server 146, the controller 144 may, if required, activate theplayback of the desired content from the content source 134. Forexample, the controller 144 may start playback of a desired featuremovie stored within the local content server 140 and select an availableRF channel of the RF coax network 130 using the RF multiplexer 142. Togive the guest time to finish the authorization process, a predetermineddelay of a few minutes before starting playback may be included.

As the controller 144 activates the desired content on the available RFchannel, the web server 146 issues the guest (or the staff member etc)one of the passkeys 148 that authorizes the particular STB 106, 120associated with the guest (targeted by the identifier 114, 128) to viewthe available channel. Note that for other pay-per-view content, thecontent may already be in progress so the controller would not need tostart the playback. The guest enters the first passkey received from theweb server 146 at query 502, and the guest's STB 106, 120 determines acorresponding second passkey as specified by the passkey module 222according to the identifier 114, 128 in order to confirm that the guestis authorized to watch the content and also to determine on whichchannel of the RF coax network 130 the content is being played. Thepasskey issued by the web server 148 may allow the guest to play thedesired channel (or perform any other customized media function) for adesignated time period such as one hour, two hours, one day, untilcheckout, etc.

As shown in FIG. 1, STB 120 includes Wi-Fi 122. Therefore, in anotherconfiguration, STB 120 may be configured by the content-on-demand module208 to directly interact with the controller 144 utilizing the hotel'swireless network access point 154. In this configuration, because a backchannel is available for the STB 120 to communicate information to thecontroller 144, content-on-demand may occur automatically without theneed for either passkeys or real-time updates of the application program160. In fact, content-on-demand functions may also be performed over anytype of available back channel, including IP over the RF coax network130, WLAN, telephone connection, or other wired and wirelessconnections.

FIG. 2 also illustrates input and output port modules 218, 220, whichrespectively specify which input and output ports may be utilized oneach STB 106, 120. For example, some STBs (e.g., identifiers ID_3, ID_6)may be authorized via the input port module 218 to receive additionalmedia content or guest content from certain input ports such as such asuniversal serial bus (USB), FireWire, Ethernet, etc or wireless accessports such as using Bluetooth, Wi-Fi, WLAN. Likewise, some STBs (e.g.,identifiers ID_1, ID_4) may be authorized to output media content orother data from certain output ports. For example, STB 106 may beconfigured to allow a guest to have input access via the on-board USB108, and STB 120 may be configured to allow a guest to have bothinput/output access via the on-board Wi-Fi 122. Changes in input andoutput ports targeted at specific STB identifiers may be reflected inthe updated application program 133 and broadcast to the STBs 106, 120by the update server 132. Only the STBs having identifiers matching thetargeted identifiers will activate the modules 218, 220 and make thechanges to their input and output ports.

FIG. 6 illustrates an exemplary operational flowchart of operationsperformed by the hotel media system 100 of FIG. 1. The steps of theflowchart are not restricted to the exact order shown, and, in otherconfigurations, shown steps may be omitted or other intermediate stepsadded. In this configuration, the hotel media system 100 performs thefollowing operations:

-   -   Step 600: A plurality of STBs 106, 120 connected to a radio        frequency (RF) coax network is provided in the hospitality media        system 100. Each STB 106, 120 has an identifier 114, 128 for        identifying the STB such as a unique identifier being        pre-programmed in a non-volatile memory 106, 120; an equipment        identifier corresponding to a type of equipment utilized in        conjunction with each STB 106, 120; a room identifier        corresponding to a room 102, 116 in which each STB 106, 120 is        located; a service level identifier indicating a level of        service entitled to each STB 106, 120, or another type of        identifier.    -   Step 602: Media content is broadcast from a content source 134        to the STBs 106, 120 utilizing the RF coax network 130. The        media content may be dynamically controlled by a controller 144        using an RF multiplexer 142 and a plurality of content providing        systems 136, 138, 140. In order to prevent unauthorized access,        the RF signal representing the media content may be encrypted.    -   Step 604: In part A of this step, the controller 144 generates        software data such as the application program 160, 200 and/or        metadata data 300, 400 being customized for each STB 106, 120        according to the identifiers 114, 128. A database 150 may be        utilized to store configurations and other information used by        the controller 144 when generating the software data 160, 200,        300, 400. In part B of this step, the update server 132        distributes the software data 160, 200, 300, 400 to the STBs        106, 120. In one configuration, the update sewer 132 broadcasts        the software data 160, 200, 300, 400 to the STBs 106, 120        utilizing the RF coax network 130. In other configurations,        other types of distribution may be utilized. For example, as        shown in FIG. 1, the update server 132 may distribute the        software data 160, 200, 300, 400 using the wireless access point        154, and STB 120 may receive the software data from the wireless        access point 154 utilizing Wi-Fi 122. In this configuration, STB        120 receives the high bandwidth media data from the RF coax        network 130, but receives software data such as updated        application program 133 and metadata 302, 402 through a        secondary and lower bandwidth method such as a wireless internet        network available in the hotel. In general, distributing the        software data to the STBs 106, 120 may be performed over any        type of distribution system such as over the RF coax network        130, WLAN, telephone connection, or other wired and wireless        connections.    -   Step 606: Media functions are performed at each STB 106, 120 by        utilizing the software data 160, 200, 300, 400 according to the        identifier 114, 128 programmed at each STB. Due to the different        identifiers 114, 128, the software data 160, 200, 300, 400        causes different behavior on STBs 106, 120 having different        identifiers 114, 128. In other words, the software data may        cause a particular STB 106, 120 to perform a media function        customized for the particular STB 106, 120 according to the        identifier 114, 128 of the particular STB 106, 120. This may        done by including in the software data a first module associated        with a target identifier, where the first module is only        activated (e.g., used) by one or more target STBs 106, 120 being        pre-programmed with the target identifier. Alternatively, a        second module may be associated with certain STB identifiers        114, 128 to exclude. In this case, STBs 106, 120 having matching        identifiers 114, 128 will ignore the second module and all other        STBs 106, 120 not having the matching identifiers 114, 128 will        activate the second module. In yet another example, a third        module may be associated with a range of STB identifiers 114,        128 to either target or exclude. Modules may also target or        exclude combinations of multiple identifiers on each STB 106,        120. This allows customizing media functions for different STBs        such as all STBs that have a service level identifier matching a        first value and an equipment type identifier matching a second        value. Combinations of these techniques may also be employed.    -   Step 608: If content-on-demand is ordered, control proceeds to        step 610; otherwise, control proceeds to step 612. For example,        content-on-demand may be ordered by a guest or hotel staff        member utilizing the web server 146.    -   Step 610: To start the desired content, the controller 144        activates playback of the desired content at the content source        134 on an available channel of the RF coax network 130 using the        RF multiplexer 142.    -   Step 612: If any STB 106, 120 needs to be updated, control        proceeds to 614; otherwise, control returns to step 606. Some        examples of situations when a STB 106, 120 may need to be        updated include: after ordering content-on-demand at step 610,        in order to provide new IPG metadata (FIG. 3) or channel list        metadata (FIG. 4), to accommodate equipment type changes, to        customize the UI for a particular guest in a particular room        102, 116, to change identifiers of any STB (such as upgrading a        particular STB to a higher service level), to send announcements        or messages to one or more rooms, to update a particular in-room        STB when a guest checks in or out of a room, etc.    -   Step 614: In part A of this step, the controller 144 generates        updated software data such as the updated application program        133 and/or updated metadata data 302, 402 being customized for        each STB 106, 120 according to the identifiers 114, 128. In part        B of this step, the update server 132 distributes the updated        software data 133, 302, 402 to the STBs 106, 120 using the same        methods as outlined above in step 604.

According to one configuration of the invention, guest rooms in a hotelare equipped with a STB 106, 120 that has a capability to receiveupdated software data 133, 302, 402 from an RF network 130 along withmedia content. The STB 106, 120 is configured to monitor the RE signalfor the updated software data 133, 302, 402 and to install the updatedsoftware data 133, 302, 402 into its non-volatile memory 110, 120.Verification of integrity of the received software updates usingchecksums can be used to prevent corrupted code from being stored. TheRF signal on the RF coax network 130 may be sent to all STBs 106, 120but only STBs 106, 120 with a matching TV or Room identifier 114, 128will utilize portions of the update. There are no adverse effects ofsending all software packages to all STBs 106, 120. Only the STBs 106,120 with matching identifiers 114, 128 would activate modules of thesoftware update targeted at those identifiers allowing specific softwaremodules to be used in specific rooms 102, 116 or locations. In otherconfigurations, specific updated software data 133, 302, 402 may bedistributed individually to specific rooms 102, 116 or locations in thehotel according to unique STB addresses/identifiers 114, 128. Theseconfiguration may be beneficial hotels having both a 1-way RF coaxnetwork 130 for providing media content to the STBs 106, 120 and awireless IP based network coupled to each STB 106, 120 for providingsoftware data to the STBs 106, 120.

Upon boot-up or reset, the STB 106, 120 loads and runs the applicationprogram 160 that was recently downloaded from the RF signal. Theapplication program 160 allows the STB 106,120 to provide various mediafunctions including a user interface (UI) for operation of the mediaplatform such as a high definition television 104, 118 or an in-roomhigh fidelity audio system. The UI may allow for user control such asvolume operation, playback start/stop/pause etc. Elements such as thevisual aspects of the UI are controlled by the software data 160 and cantherefore be changed at any time. Any aspect of the UI can be changed byupdating the application program 160 in the STBs 106, 120. For example,graphical screens, backgrounds, layout, sounds, animations, appearanceof onscreen controls, etc. Certain modules in the application program160 may be targeted at specific STB identifiers 114, 128 and are thusonly activated when the application program 160 is run on STBs havingthe specific STB identifiers 114, 128.

The STBs 106, 120 also monitor the RF coax network 130 for an updatedapplication program 133 that includes messages or instructions that arespecific to that particular room. For example, messages could be sentfrom the hotel front desk via the coax cable network 130 for display onthe television 104, 118. In addition to text, such messages couldinclude audio and video components that would be played via the mediaplatform in the particular rooms 102, 116. Playback may be initiated bythe guest upon receiving a message notification such as a flashing iconor an audio signal.

The STBs 106, 120 also monitor the RF signal for data corresponding toupdated metadata 302, 402 of media programs such as movies, concerts,and radio stations that are available to the guest. The applicationprogram 160 of the STB 106, 120 displays the updated metadata 302, 402as an IPG that the user can navigate using a remote control, touchscreen, or other control method. The metadata may be targeted atspecific STB identifiers 114, 128 or may include information correlatingSTB identifiers 114, 128 with portions of the metadata. Upon selectionof a desired media program, the application program 160 of the STB 106,120 forwards the actual media content from the RF coax network 130 toother devices such as the television 104, 118 for playback. The mediasystem 100 may also include personal video recorder (PVR) mediafunctions to allow the user to pause, rewind, and fast forward the mediacontent.

Content-on demand such as VOD and pay-per-use functionality may also beaccommodated even though the RF coax cable network 130 may only supportdata communication in one direction (ie, from update server 132 to STBs106, 120). In one configuration, the guest may simply dial a predefinedhotel extension number on the phone which connects the guest with atouch-tone or voice operated system allowing the guest to enter a numbercorresponding to a movie s/he wishes to purchase. The touch tone systemmay reside on the control server 144 at the hotel, or may even belocated at a remote site and accessible through a 1-800 number insteadof a hotel extension. Using caller-id or a similar capability, thetouch-tone media ordering system may detect the guest's room numberautomatically and accept the order and bill the room 102, 116.Alternately, instead of an automated touch tone system, the guest maysimply call the front desk, an external service provider, or access aweb server 146 to order a movie.

In another configuration, the STB 106, 120 may also be connecteddirectly to the phone line in the hotel in order to allow two-waycommunication with the controller 144. In this configuration, the guestcould interact with STB 106, 120 to order a content-on-demand, and theSTB 106, 120 sends the request to the control server via the phone line.The STB 106, 120 may also include wireless capabilities 122 and be ableto send data to the control server 144 through a wireless network accesspoint 154 in the hotel that is provided to allow the guests to surf theInternet, for example. Again, the bandwidth of the wireless networkaccess point 154 need not be sufficient to transfer the mediainformation as this arrives via the RF coax cable network 130. In fact,any method that allows the guest to interact with the controller 144,either directly or indirectly, allows for VOD and other interactivecontent-on-demand media functions. For example, two-way data transfermay be implemented by in-room phone lines using asynchronous digitalsubscriber line (ADSL) or modems, wireless networks, electrical wires,the guest's own cell phone, or even using IP over the RF coax network130.

A central configuration database 150 may be provided to allow hotelstaff to configure the STBs 106, 120 and other equipment in the rooms102, 116 via the RF coax cable network 130. Configuration aspects mayinclude skins, color schemes, predefined settings such as channelline-ups, software versions and updates, etc. The central configurationdatabase 150 may be implemented with a web server 146 that runs on thecontroller 144 or another server either local or remote to the hotel.Hotel staff or property owners interact with the configuration unit topush updates to one or more of the STBs 106, 120 or other pieces ofin-room equipment. If two-way communications between the in-roomequipment and the control server is enabled, monitoring of the STBs 106,120 and other equipment may also be performed.

A one-way system in which software data is sent to the STBs or otherin-room devices but the device cannot acknowledge receipt may raisemaintenance concerns. These concerns can be overcome by adding a backchannel to the system, making it a two-way system, as described inearlier sections. For example: phone line, wireless, or IP over coax. Inanother configuration, the STB 106, 120 or device may display versionsof all relevant software modules and media information so a user canmanually verify the information is correct and up to date. For example:when the user enters a special key sequence on the remote control thesoftware module and media information including package and versioninginformation would be displayed on the TV screen.

In summary, a hospitality media system includes a plurality of set-topboxes (STBs) connected to an RF coax network. Each STB has an identifierfor identifying the STB such as a room number, equipment type, orservice level. A content source broadcasts media content to the STBsutilizing the RF coax network and an update server distributes softwaredata to the STBs. The software data causes a particular STB to perform amedia function customized for the particular STB according to theidentifier of the particular STB. The update server may periodicallydistribute the software data to the STBs when at least one STB isrequired to be updated and may broadcast the software data to the STBsusing the RF coax network. Updated software data or passkeys generatedaccording to the STB identifiers may be used to support customizedcontent-on-demand media functions for the particular STB.

In the above description, the exemplary user identifier “guest” includescurrent guests in the hotel, people who are attending a conference ormeeting in the hotel, staff members at the hotel, or any other person oruser who may need or want to utilize a hospitality media system. Futureguests that have reservations, potential future guests that don't yethave reservations, and other users may also make use of the invention.For example, a demonstration of the technology may be available in thehotel lobby and all users would be able to try the system 100. The term“broadcasting” is intended to mean disseminating information (e.g.,media content and/or updated software data) in a way such that all STBs106, 120 may receive the same information. The term “distributing” isintended to include both broadcasting and also other methods of sendinginformation to the STBs 106, 120 where not all STBs 106, 120 necessarilyreceive the same information. The term “set-top box” (STB) includes anydevice, whether standalone or integrated within another device, thatperforms a media function according to software data and that includesfunctionality for processing media content received via the RF coaxnetwork 130 for playback by a media device such as a television or audiosystem.

Although the invention has been described in connection with a preferredembodiment, it should be understood that various modifications,additions and alterations may be made to the invention by one skilled inthe art without departing from the spirit and scope of the invention asdefined in the appended claims. For example, although the description ofthe invention has been described as being utilized at a hotel, theinvention is equally applicable to any hospitality related location orservice wishing to provide users with a media system including but notlimited to hotels, motels, resorts, hospitals, apartment/townhousecomplexes, restaurants, retirement centers, cruise ships, busses,airlines, shopping centers, passenger trains, etc. Although, thesoftware data has been illustrated including an application programhaving modules and metadata, other types of software data may also beutilized. For example, software data including configuration modulesbeing targeted at specific STB identifiers may be distributed to theSTBs 106, 120 in other configurations.

The various separate configurations, elements, features, and modules ofthe invention described above may be integrated or combined into singleunits. For example, a high definition television or other media platformthat can receive media and data directly from a coax or other connectioncan be used instead of (or in addition to) a set top box. Similarly,functions of single units may be separated into multiple units. Thevarious components may also be implemented as dedicated hardware or asone or more software programs executed by a general or specific purposeprocessor to cause the processor to operate pursuant to the softwareprogram to perform the above-described functions. For example, thecontroller 144 of FIG. 1 may be implemented by a computer server havingone or more processors executing a computer program loaded from astorage media (not shown) to perform the above-described functionsrelated to the controller 144. In addition to a dedicated physicalcomputing device, the word “server” may also mean a service daemon on asingle computer, virtual computer, or shared physical computer, forexample. Unless otherwise specified, features described may beimplemented in hardware or software according to different designrequirements. Additionally, all combinations and permutations of theabove described features and configurations may be utilized inconjunction with the invention.

What is claimed is:
 1. A method of providing customized media functions in a hospitality media system having a plurality of set-top boxes (STBs) coupled to a radio frequency (RF) coax network of a hotel, wherein each of the STBs performs one or more media functions according to software data stored in a non-volatile memory of the STB, each of the STBs is programmed with an identifier stored in the STB's non-volatile memory for identifying the STB, and the identifier of each STB: is changeable, is programmed into the STB when the STB is installed in a room of the hotel, and identifies the STB according to a characteristic of the room of the hotel in which the STB is installed, the method comprising: tracking desired functionality for each of the STBs in a database; automatically generating updated software data in response to a change in the desired functionality associated with at least one of the STBs as tracked in the database; generating the updated software data such that it specifies at least first customized functionality targeting a first identifier and second customized functionality targeting a second identifier different than the first identifier; generating the updated software data such that, when being utilized to perform media functions by a particular STB, the first customized functionality will only be activated when the particular STB is programmed with the first identifier, and the second customized functionality will only be activated when the particular STB is programmed with the second identifier; and broadcasting the updated software data to the STBs utilizing the RF coax network in order to cause all of the STBs to install the updated software data in their respective non-volatile memories; wherein the RF coax network provides one-way broadcast-only communication to the STBs such that all of the STBs receive the same updated software data over the RF coax network and cannot acknowledge receipt over the RF coax network.
 2. The method of claim 1, wherein: the updated software data is a same application program that is executed by all of the STBs; and the application program includes a first module targeting the first identifier that is only activated when the application program is executed by one or more STBs programmed with the first identifier, and a second module targeting the second identifier that is only activated when the application program is executed by one or more STBs programmed with the second identifier.
 3. The method of claim 1, wherein: the first customized functionality causes each of the STBs that are programmed with the first identifier to display an interactive program guide (IPG) listing a first set of channels of media content broadcast over the RF coax network; and the second customized functionality causes each of the STBs that are programmed with the second identifier to display an IPG listing a second set of channels of the media content different than the first set.
 4. The method of claim 3, further comprising: tracking channels to list on the respective IPG for each of the STB identifiers in the database; and automatically generating the updated software data and broadcasting the updated software data to the STBs utilizing the RF coax network in response to a change of the channels to list for at least one of the STB identifiers in the database.
 5. The method of claim 3, further comprising: periodically generating updated IPG metadata and broadcasting the updated IPG metadata to the STBs utilizing the RF coax network; wherein each of the updated IPG metadata specifies the media content that will be broadcast over the RF coax network during an upcoming time period.
 6. The method of claim 1, wherein: the first customized functionality authorizes each of the STBs that are programmed with the first identifier to play a first set of channels of media content broadcast over the RF coax network; and the second customized functionality authorizes each of the STBs that are programmed with the second identifier to play a second set of channels of the media content different than the first set.
 7. The method of claim 6, further comprising: tracking channel authorizations for each of the STB identifiers in the database; and automatically generating the updated software data and broadcasting the updated software data to the STBs utilizing the RF coax network in response to a change of the channel authorizations for at least one of the STB identifiers in the database.
 8. The method of claim 1, further comprising: tracking types of attached media devices for each of the STB identifiers in the database; and automatically generating the updated software data and broadcasting the updated software data to the STBs utilizing the RF coax network in response to a change of type of attached device for at least one of the STB identifiers in the database; wherein the first customized functionality causes each of the STBs that are programmed with the first identifier to control one or more attached media devices according to a first protocol; and the second customized functionality causes each of the STBs that are programmed with the second identifier to control one or more attached media devices according to a second protocol different than the first protocol.
 9. The method of claim 1, wherein: the first customized functionality causes each of the STBs that are programmed with the first identifier to play a pay-per-view program after receiving a first passkey from a user; and the second customized functionality causes each of the STBs that are programmed with the second identifier to play the pay-per-view program after receiving a second passkey from a user, the second passkey different than the first passkey.
 10. A tangible non-transitory computer-readable medium comprising computer executable instructions that when executed by a computer cause the computer to perform the method of claim
 1. 11. A hospitality media system comprising: a plurality of set-top boxes (STBs) coupled to a radio frequency (RF) coax network of a hotel, wherein each of the STBs performs one or more media functions according to software data stored in a non-volatile memory of the STB, each of the STBs is programmed with an identifier stored in the STB's non-volatile memory for identifying the STB, and the identifier of each STB: is changeable, is programmed into the STB when the STB is installed in a room of the hotel, and identifies the STB according to a characteristic of the room of the hotel in which the STB is installed; a database tracking desired functionality for each of the STBs; a controller coupled to the database and operable to automatically generate updated software data in response to a change in the desired functionality associated with at least one of the STBs as tracked in the database; the controller operable to generate the updated software data such that it specifies at least first customized functionality targeting a first identifier and second customized functionality targeting a second identifier different than the first identifier; the controller operable to generate the updated software data such that, when being utilized to perform media functions by a particular STB, the first customized functionality will only be activated when the particular STB is programmed with the first identifier, and the second customized functionality will only be activated when the particular STB is programmed with the second identifier; and an update server coupled to the controller and the RF coax network; the update server operable to broadcast the updated software data to the STBs utilizing the RF coax network in order to cause all of the STBs to install the updated software data in their respective non-volatile memories; wherein the RF coax network provides one-way broadcast-only communication to the STBs such that all of the STBs receive the same updated software data over the RF coax network and cannot acknowledge receipt over the RF coax network.
 12. The hospitality media system of claim 11, wherein: the updated software data is a same application program that is executed by all of the STBs; and the application program includes a first module targeting the first identifier that is only activated when the application program is executed by one or more STBs programmed with the first identifier, and a second module targeting the second identifier that is only activated when the application program is executed by one or more STBs programmed with the second identifier.
 13. The hospitality media system of claim 11, wherein: the first customized functionality causes each of the STBs that are programmed with the first identifier to display an interactive program guide (IPG) listing a first set of channels of media content broadcast over the RF coax network; and the second customized functionality causes each of the STBs that are programmed with the second identifier to display an IPG listing a second set of channels of the media content different than the first set.
 14. The hospitality media system of claim 13, wherein the controller is further operable to: track channels to list on the respective IPG for each of the STB identifiers in the database; and automatically generate the updated software data in response to a change of the channels to list for at least one of the STB identifiers in the database.
 15. The hospitality media system of claim 13, wherein: the controller is further operable to periodically generate updated IPG metadata for broadcast to the STBs utilizing the RF coax network; and each of the updated IPG metadata specifies the media content that will be broadcast over the RF coax network during an upcoming time period.
 16. The hospitality media system of claim 11, wherein: the first customized functionality authorizes each of the STBs that are programmed with the first identifier to play a first set of channels of media content broadcast over the RF coax network; and the second customized functionality authorizes each of the STBs that are programmed with the second identifier to play a second set of channels of the media content different than the first set.
 17. The hospitality media system of claim 16, wherein the controller is further operable to: track channel authorizations for each of the STB identifiers in the database; and automatically generate the updated software data in response to a change of the channel authorizations for at least one of the STB identifiers in the database.
 18. The hospitality media system of claim 11, wherein: the controller is further operable to track types of attached media devices for each of the STB identifiers in the database, and to automatically generate the updated software data in response to a change of type of attached device for at least one of the STB identifiers in the database; the first customized functionality causes each of the STBs that are programmed with the first identifier to control one or more attached media devices according to a first protocol; and the second customized functionality causes each of the STBs that are programmed with the second identifier to control one or more attached media devices according to a second protocol different than the first protocol.
 19. The hospitality media system of claim 11, wherein: the STBs are located in a plurality of guest rooms of the hotel; and the controller is operable to automatically generate the updated software data in response to a new guest checking in to one of the guest rooms.
 20. A controller for providing customized media functions in a hospitality media system having a plurality of set-top boxes (STBs) coupled to a radio frequency (RF) coax network of a hotel, wherein each of the STBs performs one or more media functions according to software data stored in a non-volatile memory of the STB, each of the STBs is programmed with an identifier stored in the STB's non-volatile memory for identifying the STB, and the identifier of each STB: is changeable, is programmed into the STB when the STB is installed in a room of the hotel, and identifies the STB according to a characteristic of the room of the hotel in which the STB is installed, the controller comprising one or more processors configured to: track desired functionality for each of the STBs in a database; automatically generate updated software data in response to a change in the desired functionality associated with at least one of the STBs as tracked in the database; generate the updated software data such that it specifies at least first customized functionality targeting a first identifier and second customized functionality targeting a second identifier different than the first identifier; generate the updated software data such that, when being utilized to perform media functions by a particular STB, the first customized functionality will only be activated when the particular STB is programmed with the first identifier, and the second customized functionality will only be activated when the particular STB is programmed with the second identifier; and cause the updated software data to be broadcast to the STBs utilizing the RF coax network in order to cause all of the STBs to install the updated software data in their respective non-volatile memories; wherein the RF coax network provides one-way broadcast-only communication to the STBs such that all of the STBs receive the same updated software data over the RF coax network and cannot acknowledge receipt over the RF coax network. 